Separation Logic for a Higher-Order Typed Language

نویسندگان

  • Neelakantan Krishnaswami
  • John Reynolds
  • Jonathan Aldrich
چکیده

Separation logic is an extension of Hoare logic which permits reasoning about low-level imperative programs that use shared mutable heap structure. In this work, we create an extension of separation logic that permits effective, modular reasoning about typed, higher-order functional programs that use aliased mutable heap data, including pointers to code.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Higher-Order Logic for Concurrent Termination-Preserving Refinement

Compiler correctness proofs for higher-order concurrent languages are difficult: they involve establishing a termination-preserving refinement between a concurrent high-level source language and an implementation that uses low-level shared memory primitives. However, existing logics for proving concurrent refinement either neglect properties such as termination, or only handle first-order state...

متن کامل

A Logic Programming Approach to Implementing Higher-Order Term Rewriting

Term rewriting has proven to be an important technique in theorem proving. In this paper, we illustrate that rewrite systems and strategies for higher-order term rewriting, which includes the usual notion of rst-order rewriting, can be naturally speciied and implemented in a higher-order logic programming language. We adopt a notion of higher-order rewrite system which uses the simply typed-cal...

متن کامل

The Calculus of Constructions and Higher Order Logic

The Calculus of Constructions (CC) ([Coquand 1985]) is a typed lambda calculus for higher order intuitionistic logic: proofs of the higher order logic are interpreted as lambda terms and formulas as types. It is also the union of Girard's system F ! ([Girard 1972]), a higher order typed lambda calculus, and a rst order dependent typed lambda calculus in the style of de Bruijn's Automath ([de Br...

متن کامل

The Calculus of Constructions andHigher

The Calculus of Constructions (CC) ((Coquand 1985]) is a typed lambda calculus for higher order intuitionistic logic: proofs of the higher order logic are interpreted as lambda terms and formulas as types. It is also the union of Girard's system F ! ((Girard 1972]), a higher order typed lambda calculus, and a rst order dependent typed lambda calculus in the style of de Bruijn's Automath ((de Br...

متن کامل

Higher-Order Logic Programming Languages with Constraints: A Semantics

A Kripke Semantics is defined for a higher-order logic programming language with constraints, based on Church’s Theory of Types and a generic constraint formalism. Our syntactic formal system, hoHH(C) (higher-order hereditary Harrop formulas with constraints), which extends λProlog’s logic, is shown sound and complete. A Kripke semantics for equational reasoning in the simply typed lambda-calcu...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2005